Шаг 15 - Архивирование базы.

Автор Стас Корниенко

Последним этапом является настройка резервного копирования баз. Для этого в корне диска создаём папку Backup.
Заходим в её свойства, затем в "Security", затем в "Advanced".
Снимаем галочку, отвечающую за наследование прав с корня диска, при этом копируем права.
Удаляем права группы Users - нечего никому там лазить.

В папку кладём два файла. Первый файл - arc.bat следующего содержимого:

@ECHO OFF
SET PREFIX=%1
SET BAZA=%2

SET FOLDER=%DATE%

cd C:\BACKUP
mkdir "%FOLDER%"
cd "%FOLDER%"
del /F /Q %PREFIX%.RAR
del /F /Q %PREFIX%.LOG

ECHO Begin: %DATE% %TIME% > %PREFIX%.LOG
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\*.DBF
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\1CV7.DD
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\1CV7.MD
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\1CV7.ORD
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\1CV7.SPL
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\1CV7FLT.LST
"C:\Program Files\WinRar\WINRAR.EXE" a -m5 -ep -dh -ilog%PREFIX%.LOG -inul -apUSRDEF %PREFIX%.RAR C:\1sbdb.adm\%BAZA%\USRDEF\USERS.USR
ECHO. >> %PREFIX%.LOG
ECHO. >> %PREFIX%.LOG
ECHO End: %DATE% %TIME% >> %PREFIX%.LOG

cd C:\BACKUP

Как видно, этот файл должен запускаться с двумя параметрами. Первый: префикс - краткое имя базы, которое войдёт в основу имени архива. Второй параметр - путь к базе относительно папки C:\1SBDB.ADM

Arc.bat выполняет следующие операции:

В папке создаёт архив %ПРЕФИКС%.RAR, в который запаковывает из базы 1С следующие файлы: *.DBF

1CV7.DD 
1CV7.MD 
1CV7.ORD 
1CV7.SPL 
1CV7FLT.LST 
USRDEF\USERS.USR 

Ошибки, возникнувшие в процессе архивации, записываются в %ПРЕФИКС%.LOG

Второй файл - all.bat

cd C:\BACKUP
call arc.bat BZ1 Baza1
call arc.bat BZ2 Baza2
call arc.bat BZ3 Test\Baza3

Этот файл по-очереди запускает архивацию всех баз. Как видно из примера, путь базы относительно папки C:\1SBDB.ADM может состоять из более чем одного файла.

Последняя оставшаяся операция - это добавления нового задания в планировщик. Пуск -> Программы -> Accessories -> System Tools -> Sheduled Tasks
Добавить новое задание.
В появившемся окне нажимаем кнопку "Next", затем - "Browse..." и выбираем файл C:\BACKUP\ALL.BAT
Выбираем ежедневный режим запуска, скажем в 03:00 ночи
В следующем окне указываем, что запускать надо из-под пользователя Administrator, не забывая при этом указать его правильный пароль.
Готово. Если любопытно, можете заглянуть в дополнительные параметры.

Hosted by uCoz